1
定数を超えて:Rustの列挙型の力
AI034Lesson 6
00:00

Rustでは、 列挙型 (enums)は単なるリスト以上のものであり、可能性の建築設計図です。ゆるくグループ化された整数とは異なり、列挙型は 和型を意味します。つまり、変数は複数の異なる バリエーションのいずれか一つを正確に表現できます。

1. 名前空間とスコープ

バリエーションは、二重コロン(::)演算子を使って列挙型の識別子の下に整理されています。この 名前空間 は、異なる モジュールクレート、または パッケージ間で衝突を防ぎます。これにより、複数の文脈で V4 というバリエーションを明確な曖昧さなく定義できます。

列挙型のスコープ:IpAddrKind::V4::V6互いに排他的

2. 型安全

関数の引数として列挙型を使用することで、 標準ライブラリ パターンにより、有効な状態のみがロジックに入ることを保証します。これにより、潜在的なランタイムエラーをコンパイル時へ移動させ、 route 関数が存在しない「v5」アドレスを処理する必要がないことを保証します。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>